package com.kevin.utility.enums;

import java.util.HashMap;
import java.util.Map;

/**
 * 分隔符
 * 
 * @author juntao.lai
 * @since 2015年1月22日
 *
 */
public enum Separator {
    /**
     * 分号 = ;
     */
    SEMICOLON(";"),
    
    /**
     * 中文分号 = ；
     */
    SEMICOLON_ZH("；"),
    
    /**
     * 逗号 = ,
     */
    COMMA(","),
    
    /**
     * 中文逗号 = ，
     */
    COMMA_ZH("，"),
    
    /**
     * 系统自定义（沛哥定义的通用分隔符）= ~|~
     */
    DORAEMON_DEFINE("~|~"),
    
    AND("&");
    
    private String text;
    
    Separator(String text) {
        this.text = text;
    }
    
    public String getText() {
        return this.text;
    }
    
    private static final Map<String, Separator> stringToEnum = new HashMap<String, Separator>();
    static {
        for(Separator code : values()) {
            stringToEnum.put(code.toString(), code);
        }
    }
    
    public static Separator fromString(String symbol) {
        return stringToEnum.get(symbol);
    }

    @Override
    public String toString() {
        return text;
    }
    
    /**
     * 获得正则字符串（spit时使用）
     * 
     * @return
     */
    public String toRegexString(){
        if (this == DORAEMON_DEFINE){
            return "~\\|~";
        }
        return this.toString();
    }
}
